کرم جدیدی که W32.Blaster نا میده می شود طی روزهای اخیر بشدت گسترش و توانسته است تعدادی بسیار زیا دی از کامپیوترها را آ لوده نماید . کرم فوق، دارای اسامی دیگری نظیر : W32/Lovsan.worm ، WORM_MSBLAT.A و Win32.Posa.Worms می باشد.
تاریخ کشف : یازدهم اگوست 2003 . کامپیوترهائی که قبلا" از Patch امنیتی MS03-026 استفاده نموده اند در مقابل ویروس فوق، مصونیت خواهند داشت .
نحوه توزیع : توزیع کرم فوق، از طریق پورت های باز RPC انجام می شود . سیستم ها پس از آلودگی به ویروس فوق، راه اندازی مجدد شده و یا فایل msblase.exe بر روی آنان وجود خواهد داشت .
جرئیات فنی : RPC)Remote Procedure Call) ، پروتکلی است که توسط سیستم عامل ویندوز استفاده می گردد . RPC ، یک مکانیزم ارتباطی را ارائه و این امکان را فراهم می نماید که برنامه در حال اجراء بر روی یک کامپیوتر قادر به اجراء کد موجود بر روی یک سیستم از راه دور گردد . پروتکل RPC از پروتکل OSF)Open Software Foundation) مشتق شده و مایکروسافت امکانات اضافه ای را به آن اضافه نموده است . در بخشی از پروتکل فوق یک نقطه آسیب پذیر وجود داشته که در ارتباط با پیام های مبادله شده بر روی TCP/IP است . مشکل بوجود آمده ناشی از عدم بررسی ( برخورد ) مناسب پیام های ناقص است . این ضعف امنیتی باعث تاثیرگذاری یک اینترفیس DCOM)Distributed Component Model) با RPC می گردد( گوش دادن به پورت های فعا ل RPC ). ایترفیس فوق ، باعث بررسی درخواست های فعال شی DCOM ارسال شده توسط ماشین سرویس گیرنده برای سرویس دهنده می گردد . یک مهاجم که امکان استفاده موفقیت آمیز از ضعف موجود را کسب نماید، قادر به اجراء کد با مجوزهای محلی سیستم بر روی یک سیستم آسیب پذیر ، خواهد بود. در چنین حالتی مهاجم ، قادر به انجام هر نوع عملیاتی بر روی سیستم خواهد بود . نصب برنامه ها ، مشاهده تغییرات ، حذف فایل ها و ایجاد account های جدید بهمراه تمامی مجوزهای مربوطه ، نمونه هائی در این رابطه می باشد .بمنظور استفاده از ضعف موجود، یک مهاجم درخواستی خاص بر روی کامپیوتر از راه دور و از طریق پورت های مشخص شده RPC را ارسال می نماید .
عملکرد ویروس :کرم بلستر ، بصورت تصادفی یک دامنه از آدرس های IP را پویش ( بررسی ) تا سیستم مورد نظر خود را برای آسیب رسانی از طریق پورت 135 ، انتخاب نماید . کرم فوق ، از ضعف موجود در رابطه با DCOM RPC استفاده می نماید . ( اشاره شده در patch شماره MS03-026 ) . زمانیکه کد مربوطه برای سیستمی ارسال گردید در ادامه اقدام به download و اجرای فایل MSBLATE.EXE از یک سیستم راه دور و از طریق HTTP می نماید . پس از اجراء ، کلید ریجستری زیر ایجاد خواهد شد :
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\ Run "windows auto update" = msblast.exe I just want to say LOVE YOU SAN!! bill |
علائم آلودگی سیستم : برخی از کاربران ممکن است هیچگونه علائمی مبنی بر آلودگی سیستم خود را مشاهده ننمایند . در رابطه با کاربرانی که از سیستم ویندوز XP و یا Server 2003 استفاده می نمایند ، سیستم پس از لحظاتی و بدون اینکه کاربر عملیات خاصی را انجام دهد، راه اندازی مجدد می گردد . در رابطه با کاربرانی که از ویندوز NT 4.0 و یا ویندوز 2000 ، استفاده می نمایند ، سیستم رفتاری غیرپاسخگو را خواهد داشت ( عدم واکنش صحیح در رابطه با برخی از رویداد ها و ارائه خدمات طبیعی ) . کاربران در این رابطه ممکن است موارد زیر را نیز مشاهده نمایند :
سیستم های آسیب پذیر : کاربرانی که دارای یکی از سیستم های زیر می باشند ، در معرض آلودگی خواهند بود :
-
ویندوز NT 4.0
-
ویندوز 2000
-
ویندوز XP
-
ویندوز 2003
سیستم های مصون : در صورتیکه وجود شرایط زیر ، کامپیوتر مورد نظر در مقابل عملکرد کرم بلستر مصون خواهد بود :
Patch های موجود : برای دریافت patch مربوطه می توان از آدرس های زیر استفاده کرد :
سوالات متداول در رابطه با کرم بلستر :
علت وجود ضعف موجود چیست ؟ اشکال فوق، مربوط به یک Buffer overrun است ( بافری که بررسی های لازم در ارتباط با آن انجام نشده است ) . مهاجمی که قادر به استفاده موفقیت آمیز از ضعف موجود باشد ، می تواند کنترل کامل سیستم را از طریق یک کامپیوتر از راه دور در اختیار و عملیات دلخواه خود را بدون هیچگونه محدودیتی انجام دهد.علت بروز چنین مسئله ای به سرویس RPC ویندوز برمی گردد که بصورت مناسب وضعیت پیام های ورودی را تحت شرایط خاص ، بررسی نمی نماید .
DCOM چیست ؟ پروتکلی است که امکا ن ارتباط مستقیم بین عناصر نرم افزاری موجود در یک شبکه با یکدیگر را فراهم می نماید.پروتکل فوق، قبلا" OLE Network نامیده می شد.
RPC چیست ؟ پروتکلی است که یک برنامه می تواند با استفاده از آن درخواست سرویسی را از برنامه موجود بر روی کامپیوتر دیگر در شبکه داشته باشد . RPC ، تسهیلات و امکانات لازم در خصوص ارتباط بین برنامه ها را فراهم می نماید . برنامه هائی که از RPC استفاده می نمایند ضرورتی به آگاهی از پروتکل های شبکه که ارتباطات را حمایت می نمایند ، نخواهند داشت . در RPC ، برنامه درخواست کننده سرویس گیرنده بوده و برنامه ارائه دهنده سرویس ، سرویس دهنده می باشد .
سرویس های اینترنت COM و RPC بر روی HTTP چه چیزی می باشند ؟ سرویس های اینترنت COM معرفی شده، پروتکل حمل DCOM را در ارتباط با TCP ارائه و این امکان را فراهم می نماید که DCOM ، عملیات خود را از طریق پورت 80 پروتکل TCP انجام دهد . سرویس های اینترنت COM و RPC بر روی HTTP ، این امکان را برای یک سرویس گیرنده و سرویس دهنده فراهم می نمایند که قادر به برقراری ارتباط با یکدیگر در صورت حضور و یا فعال بودن اکثر سرویس دهندگان پروکسی و یا فایروال باشند .
با استفاده از چه روشی می توان از نصب سرویس های اینترنت COM بر روی سیستم ، اطمینان حاصل کرد؟ بهترین روش در این رابطه جستجو برای یافتن فایل rpcproxy.dll است . در صورتیکه فایل فوق پیدا گردد ، نشاندهنده نصب سرویس های اینترنت COM بر روی ماشین است .
اشتباه مایکروسافت در رابطه با پیاده سازی RPC چیست ؟ در بخشی از RPC شکافی وجود داشته که در ارتباط با پیام های مبادله شده از طریق TCP/IP است . علت بروز مشکل ،عدم برخورد مناسب با پیام های ناقص است . مشکل فوق، باعث تاثیرات خاصی در ارتباط با اینترفیس DCOM شده و زمینه گوش دادن به پورت 135 مربوط به TCP/IP ، فراهم می گردد . امکان دستیابی از طریق پورت های 139 ، 445 و 593 نیز وجود خواهد داشت . با ارسال یک پیام ناقص RPC ، یک مهاجم می تواند باعث بروز اشکال در سرویس دهی توسط سرویس RPC بر روی یک ماشین گردد .
یک مهاجم با استفاده از ضعف موجود قادر به انجام چه عملیاتی خواهد بود ؟ مهاجمی که قادر به استفاده موفقیت آمیز از ضعف موجود باشد ، می تواند کدهائی را با مجوزهای سیستم محلی بر روی یک سیستم اجراء نماید . مهاجم ، قادر به انجام هر نوع عملیاتی بر روی سیستم نظیر : نصب برنامه ها ، مشاهده تغییرات ، حذف فایل ها و ایجاد account های جدید با مجوزها و اختیارات کامل، خواهد بود.
یک مهاجم به چه صورت از ضعف فوق ، استفاده می نماید ؟ یک مهاجم ، بمنظور جستجو و استفاده از این نقص امنیتی می تواند با برنامه ریزی یک ماشین که قادر به ارتباط با یک سرویس دهنده آسیب پذیر از طریق RPC باشد ، ارتباطی را برقرار و در ادامه یک نوع پیام خاص RPC ناقص را ارسال نماید . دریافت چنین پیامی باعث بروز اشکال در ماشین آسیب پذیر شده و بدین ترتیب ماشین فوق ، قادر به اجراء کد دلخواه و مورد نظر مهاجم خواهد بود .
چه کسانی در معرض این آسیب هستند ؟ هر کاربری که قادر به عرضه یک درخواست TCP بر روی یک اینترفیس RPC بر روی یک کامپیوترآسیب پذیر باشد ، می تواند در معرض آسیب فوق باشد . با توجه به اینکه درخواست های RPC بصورت پیش فرض بر روی تمامی نسخه های ویندوز فعال ( on) می باشند ، هر کاربری که قادر به برقراری ارتباط با یک کامپیوترآسیب پذیر باشد ، می تواند در معرض این آسیب قرار گیرد .